First, with SparkIV, export your WEAPONS.ivaud from resident.rpf (find it in
pc\audio\Sfx). Open the WEAPONS.ivaud with GTA IV-aud and import all sound files
to here (match the names):

SNIPERRIFLE_SHOT1_L
SNIPERRIFLE_SHOT1_R

Save once done and import back to resident.rpf, Save and close.

If you want to replace AK-47, just rename the SNIPERRIFLE_SHOT1_L and
SNIPERRIFLE_SHOT1_R to AK47_SHOT1_L and AK47_SHOT1_R, and replace it.

Now install the new WeaponInfo to Sniper Rifle or AK-47 line below:

Sniper Rifle (if you pick this version, you need to install new targeting with OpenIV)
	<weapon type="SNIPERRIFLE">
		<data slot="SNIPER" firetype="DELAYED_HIT" damagetype="BULLET" group="RIFLE_SNIPER" targetrange="100.0" weaponrange="5000.0" clipsize="20" ammomax="40" timebetweenshots="400">
			<damage base="100" fps="70" networkplayermod="2.0" networkpedmod="1.0"/>
			<physics force="45.0"/>
			<reload time="2066" fasttime="2066" crouchtime="2066"/>

			<aiming accuracy="10.0" accuracyfps="0.0">
				<offset x="0.16" y="1.0" z="0.55"/>
				<crouchedoffset x="0.16" y="1.0" z="0.12"/>
				<reticule standing="0.6" ducked="0.5" scale="0.05"/>
			</aiming>

			<pickup regentime="360000" ammoonstreet="20"/>

			<controller>
				<rumble duration="120" intensity="0.3"/>
			</controller>

			<flags>
				<flag>GUN</flag>
				<flag>CAN_FREE_AIM</flag>
				<flag>FIRST_PERSON</flag>
				<flag>ANIM_RELOAD</flag>
				<flag>ANIM_CROUCH_FIRE</flag>
				<flag>2HANDED</flag>
			</flags>
		</data>

		<assets model="w_psg1">
			<anim group="gun@rifle"/>
			<effects>
				<muzzle fx="muz_machine"/>
				<shell fx="weap_ejected_rifle"/>
			</effects>
		</assets>
	</weapon>

AK-47
	<weapon type="AK47">
		<data slot="RIFLE" firetype="INSTANT_HIT" damagetype="BULLET" group="RIFLE_ASSAULT" targetrange="100.0" weaponrange="5000.0" clipsize="20" ammomax="40" timebetweenshots="133">
			<damage base="100" networkplayermod="2.5" networkpedmod="1.25"/>
			<physics force="45.0"/>
			<reload time="2066" fasttime="1166" crouchtime="2066"/>

			<aiming accuracy="0.5">
				<offset x="0.14" y="1.0" z="0.55"/>
				<crouchedoffset x="0.08" y="1.0" z="0.12"/>
				<reticule standing="0.6" ducked="0.5" scale="0.3"/>
			</aiming>

			<pickup regentime="240000" ammoonstreet="16"/>

			<controller>
				<rumble duration="120" intensity="0.3"/>
			</controller>

			<flags>
				<flag>GUN</flag>
				<flag>CAN_AIM</flag>
				<flag>2HANDED</flag>
				<flag>ANIM_RELOAD</flag>
				<flag>CAN_FREE_AIM</flag>
				<flag>ANIM_CROUCH_FIRE</flag>
			</flags>
		</data>

		<assets model="w_AK47">
			<anim group="gun@ak47"/>
			<effects>
				<muzzle fx="muz_machine"/>
				<shell fx="weap_ejected_rifle"/>
			</effects>
		</assets>
	</weapon>

